package collection;

import java.util.ArrayList;
import java.util.List;

/**
 * java.util.List集合
 * List接口继承自Coolection
 * List是有序且可以存放重复元素的集合，并且提供了一套可以通过下标操作元素的方法
 *
 * 常见的实现类：
 * ArrayList：内部使用数组实现，查询性能更好
 * LinkedList：内部使用链表实现，首位增删性能更好
 * 如果不是对性能十分苛刻，一般使用ArrayList即可
 */
public class ListDemo1 {
    public static void main(String[] args) {
        List<String> list = new ArrayList<>();
        list.add("one");
        list.add("two");
        list.add("three");
        list.add("four");
        list.add("five");
        System.out.println(list);
        /*
        E get(int index)
        获取指定下标位置的元素
         */
        String e = list.get(2);
        System.out.println(e);

        for (int i=0;i<list.size();i++){
            e = list.get(i);
            System.out.println(e);
        }



        /*
        E set(int index,E e)
        将给定元素设置到指定位置，返回值为原位置对应的元素
        set是替换元素操作
         */
        //[one, two, three, four, five] -> [one, two, six, four, five]
        String old = list.set(2,"six");
        System.out.println(list); //[one, two, six, four, five]
        System.out.println("被替换的元素是："+old); //被替换的元素是：three
    }
}











